package jmine.tec.sync;

import java.io.IOException;

import jmine.tec.rpc.sync.DatabaseSynchronizationCommand;

/**
 * Canal para qual os comandos de sincronizacao devem ser enviados
 * 
 * @author takeshi
 */
public interface DataPushChannel {

    /**
     * Envia os comandos
     * 
     * @param cmds array de {@link DatabaseSynchronizationCommand}
     * @throws IOException e
     */
    void pushCommands(DatabaseSynchronizationCommand[] cmds) throws IOException;

    /**
     * Envia os comandos jah serializados
     * 
     * @param data array de byte
     * @throws IOException e
     */
    void pushCommandsAsBytes(byte[] data) throws IOException;

}
